if (USE_CEMHYD)
    set (tm_cemhyd
        cemhyd/cemhydmat.cpp
        )
endif ()

set (tm_emodel
    stationarytransportproblem.cpp
    nonstationarytransportproblem.cpp
    nltransienttransportproblem.cpp
    darcyflow.cpp
    transienttransportproblem.cpp
    )

set (tm_element
    transportelement.cpp
    quad1_ht.cpp
    tr1_ht.cpp
    quadaxisym1_ht.cpp
    traxisym1_ht.cpp
    brick1_ht.cpp
    qbrick1_ht.cpp
    wedge_ht.cpp
    qwedge_ht.cpp
    tetrah1_ht.cpp
    tr1darcy.cpp
    latticetransportelement.cpp
    lattice2d_mt.cpp
    )

set (tm_boundary
    gravitypressure.cpp
    transportgradientneumann.cpp
    transportgradientdirichlet.cpp
    transportgradientperiodic.cpp
    )

set (tm_cs
    simpletransportcrosssection.cpp
    )

set (tm_status
    transportmaterial.cpp
    latticetransmat.cpp
    )

set (tm_material
    hydram.cpp
    hydratingisoheatmat.cpp
    hydratinghemomat.cpp
    hydratingconcretemat.cpp
    hemotkmat.cpp
    hemokunzelmat.cpp
    hemobaznajmat.cpp
    isoheatmat.cpp
    isomoisturemat.cpp
    isolinmoisturemat.cpp
    bazantnajjarmat.cpp
    nlisomoisturemat.cpp
    nonlinearmassmat.cpp
    anisomassmat.cpp
    rvestokesflow.cpp
    )

file(GLOB_RECURSE project_headers *.h)
file(GLOB_RECURSE project_cpps *.cpp)
set(all_files ${project_headers} ${project_cpps})
source_group_by_dir(all_files)

set (tm
    ${tm_emodel}
    ${tm_element}
    ${tm_material}
    ${tm_cs}
    ${tm_status}
    ${tm_new}
    ${tm_cemhyd}
    ${tm_hydram}
    ${tm_boundary}
    )

add_library (tm
    ${LIB_TYPE}
    ${tm}
    ${project_headers}
    )
